package com.njupt.simulation.utils;

public class CaculateOverlapBand {
    public static double calculateoverlapband(double f1, double B, double f_min, double f_max) {
        //f1是受扰信号中心频率，B是受扰信号带宽，f_min是干扰信号频段下界，f_max是干扰信号频段上界

        double B_chongdie = 0;
        if (f_max <= f1 - B / 2 || f_min >= f1 + B / 2) {
            B_chongdie = 0;
        } else if (f_max > f1 - B / 2 && f_max <= f1 + B / 2 && f_min <= f1 - B / 2) {
            B_chongdie = f_max - (f1 - B / 2);
        } else if (f_max > f1 - B / 2 && f_max <= f1 + B / 2 && f_min > f1 - B / 2) {
            B_chongdie = f_max - f_min;
        } else if (f_max > f1 + B / 2 && f_min >= f1 - B / 2 && f_min <= f1 + B / 2) {
            B_chongdie = f1 + B / 2 - f_min;
        }
        return  B_chongdie ;
    }




    public static void main(String[] args) {

        double overlapband = calculateoverlapband(14.250,0.500,14.250,14.750);

        // 打印结果
        System.out.println("重叠带宽为：" + overlapband);
    }

}